שיעור מספר 7: מקושרים
|
|
- Grace Roberts
- 5 years ago
- Views:
Transcription
1 שיעור מספר 7: מקושרים אוהד ברזילי דן הלפרין בית הספר למדעי המחשב
2 על סדר היום נתחיל בדוגמא נאיבית של מבנה מקושר נכליל את המבנה ע"י הכללת טיפוסים נדון בייצוג הכרות אינטימית בשפת התכנות נדון בהפשטת מעבר סידרתי על נתונים והשלכותיו 2
3 מבנים מקושרים כדי לייצג מבנים מקושרים, כגון רשימה מקושרת, עץ, וכדומה, מגדירים מחלקות שכוללות שדות שמתייחסים לעצמים נוספים מאותה מחלקה )ולפעמים גם למחלקות נוספות (. כדוגמא פשוטה ביותר, נגדיר מחלקה IntCell שעצמים בה מייצגים אברים ברשימות מקושרות של שלמים. המחלקה מייצאת בנאי ליצירת עצם כאשר התוכן )שלם( והאבר הבא הם פרמטרים. המחלקה מייצאת שאילתות עבור התוכן והאבר הבא, ופקודות לשינוי האבר הבא, ולהדפסת תוכן הרשימה מהאבר הנוכחי השדות מוגדרים כפרטיים מוסתרים מהלקוחות המבנה IntCell אנלוגי למבנה cons משפת :Scheme car אנלוגי ל cont() cdr אנלוגי ל next() 3
4 class IntCell public class IntCell { private int cont; private IntCell next; public IntCell(int cont, IntCell next) { this.cont = cont; this.next = next; public int cont() { return cont; 4
5 class IntCell public IntCell next() { return next; public void setnext(intcell next) { this.next = next; public void printlist() { System.out.print("List: "); משתנה העזר של הלולאה הוא מטיפוס IntCell for (IntCell y = this; y!= null; y = y.next()) System.out.print(y.cont() + " "); System.out.println(); 5
6 מחלקה לביצוע בדיקות כדי לבדוק שהמחלקה שכתבנו פועלת כנדרש, נכתוב מחלקה התחלתית לבדיקה, שתכיל שרות הראשי.main בהמשך הקורס נעסוק בנושא בדיקות (testing) אך כרגע נציין שעלינו לבחור מקרי בדיקה שמכסים אפשרויות שונות כדי שנוכל לגלות שגיאות )אם יש( חשוב! שגיאות של מחלקה או שרות מוגדרות בהקשר של החוזה של המחלקה. אם למחלקה )או לשרות שלה( אין חוזה מפורש לא ברור מהי ההתנהגות ה"נכונה" במקרי קצה בהרצאה היום נסתפק באינטואיציה שיש לנו לגבי רשימות מקושרות 6
7 מחלקה לביצוע בדיקות public class Test { public static void main(string[] args) { IntCell x = null; IntCell y = new IntCell(5,x); y.printlist(); IntCell z = new IntCell(3,y); z.printlist(); z.setnext(new IntCell(2,y)); z.printlist(); y.printlist(); 7
8 מחלקה לביצוע בדיקות הפלט List: 5 List: 3 5 List: List: 5 איך ניצור מבנה מקושר של תווים? או של מחרוזות? יצירת מחלקה חדשה כגון StringCell או CharCell תשכפל הרבה מהלוגיקה הקיימת ב IntCell יש צורך בהפשטת הטיפוס int מטיפוס הנתונים Cell היינו רוצים להכליל את הטיפוס Cell לעבוד עם כל סוגי הטיפוסים 8
9 מחלקות ושרותים מוכללים )גנריים( החל מגירסא 1.5 )נקראת גם ) 5.0 ג'אווה מאפשרת הגדרת מחלקות גנריות ושרותים גנריים )Generics( מחלקה גנרית מגדירה טיפוס גנרי, שמציין אחד או יותר משתני טיפוס variables) (type בתוך סוגריים משולשים. עקב ההוספה המאוחרת לשפה )והדרישה שקוד שנכתב קודם יוכל לעבוד ביחד עם קוד חדש(, ומשיקולים של יעילות המימוש, כללי השפה לגבי טיפוסים גנריים הם מורכבים. 9
10 מחלקות ושרותים מוכללים )גנריים( רעיון דומה קיים גם בשפת התכנות ++C ב ++C נקראת תכונה זו תבנית )template( כרגע נציג רק את המקרה הפשוט. לדון בנושא ביתר פירוט. בהמשך נחזור דוגמא ראשונה הכללה של המחלקה IntCell לייצוג תא שתוכנו מטיפוס פרמטרי T, כך שכל התאים ברשימה הם מאותו הטיפוס. 10
11 Cell <T> public class Cell <T> { private T cont; private Cell <T> next; public Cell (T cont, Cell <T> next) { this.cont = cont; this.next = next; 11
12 Cell <T> public T cont() { return cont; public Cell <T> next() { return next; public void setnext(cell <T> next) { this.next = next; 12
13 Cell <T> public void printlist() { System.out.print("List: "); for (Cell <T> y = this; y!= null; y = y.next()) System.out.print(y.cont() + " "); System.out.println(); 13
14 מה השתנה במחלקה? לכותרת המחלקה נוסף משתנה הטיפוס T מקובל ששמות משתני טיפוס הם אות גדולה אחת אולם זו אינה דרישה תחבירית, ניתן לקרוא למשתנה הטיפוס בשם משמעותי הטיפוס שמוגדר הוא <T> Cell הטיפוס של כל שדה, פרמטר, משתנה זמני, של שרות שהיה int יוחלף ב T וכל טיפוס מוחזר הטיפוס של כל שדה, פרמטר, משתנה זמני, של שרות שהיה Cell יוחלף ב Cell<T> וכל טיפוס מוחזר 14
15 שימוש בטיפוס גנרי כדי להשתמש בטיפוס גנרי יש לספק, בהצהרה על משתנה, ובקריאה לבנאי, טיפוס קונקרטי עבור כל משתנה טיפוס שלו. לדוגמא: Cell <Integer> באנלוגיה להגדרת שרות וקריאה לו, משתנה טיפוס בהגדרת המחלקה מהווה מעין פרמטר פורמלי, והטיפוס הקונקרטי הוא מעין פרמטר אקטואלי. 15
16 דוגמת שימוש בטיפוס גנרי נראה מחלקה שמשתמשת ב <T> Cell שהשתמשה ב : IntCell, שהיא אנלוגית למחלקה public class TestGen { public static void main(string[] args) { Cell <Integer> x = null; Cell <Integer> y = new Cell<Integer>(5,x); y.printlist(); Cell<Integer> z = new Cell <Integer>(3,y); z.printlist(); z.setnext(new Cell <Integer>(2,y)); z.printlist(); y.printlist(); 16
17 שימוש בטיפוס גנרי הטיפוס הקונקרטי חייב להיות טיפוס הפנייה, אינו יכול להיות פרימיטיבי. כלומר אם רוצים ליצור למשל תאים שתוכנם הוא מספר שלם, לא ניתן לכתוב <int> Cell לצורך זה נזדקק לטיפוסים עוטפים (wrapper type) 17
18 טיפוסים עוטפים (wrappers) לכל טיפוס פרימיטיבי קיים בג'אווה טיפוס הפנייה מתאים: ל- float העוטף, Float ל- double העוטף Double וכו' int המתאים ל, Integer ו- char יוצאי דופן: Character המתאים ל- כל הטיפוסים העוטפים מקובעים )immutable( הטיפוסים העוטפים שימושיים כאשר יש צורך בעצם ביצירת אוספים של ערכים, ובשימוש בטיפוס גנרי( )למשל 18
19 Boxing and Unboxing ניתן לתרגם טיפוס פרימיטיבי לטיפוס העוטף שלו )boxing( ע"י קריאה לבנאי המתאים: char pc = 'c'; Character rc = new Character(pc); ניתן לתרגם טיפוס עוטף לטיפוס הפרימיטיבי המתאים )unboxing( ע"י שימוש במתודות xxxvalue המתאימות: Float rf = new Float(3.0); float pf = rf.floatvalue(); בין טיפוס פרימיטיבי לטיפוס העוטף שלו: Integer i = 0;// autoboxing int n = i; // autounboxing if(n==i) // true i++; // i==1 System.out.println(i+n); // 3 ג'אווה 1.5 מאפשרת מעבר אוטומטי 19
20 עוד על שימוש בטיפוס גנרי ניתן להגדיר משתנה )שדה, משתנה זמני, פרמטר( מהטיפוס <Integer>> Cell <Cell גם מה מייצג הטיפוס הזה? דוגמא של הצהרה עם אתחול: Cell <Cell <Integer> > q = new Cell <Cell <Integer>> (new Cell<Integer> (8,null), null); 20
21 ? מי אתה Cell<T> האם Cell<T> באמת מייצג רשימה מקושרת? בשפת Scheme התשובה היא כן. אולם ב Java אמצעים טובים יותר להפשטת טיפוסים יש בשפה Cell אינו רשימה הוא תא ניתן )וצריך!( לבטא את שני הרעיונות רשימה ותא כטיפוסים בשפה עם תכונות המתאימות לרמת ההפשטה שלהן נציג את המחלקה MyList<T> המייצגת רשימה 21
22 קרוב ראשון ל- MyList<T> public class MyList <T> { private Cell <T> head; public MyList (Cell <T> head) { this.head = head; המחלקה נקראת MyList ולא List כדי שלא נתבלבל בינה ובין java.util.list מהספרייה הסטנדרטית של Java public Cell<T> gethead() { return head; public void printlist() { System.out.print("List: "); for (Cell <T> y = head; y!= null; y = y.next()) System.out.print(y.cont() + " "); System.out.println(); 22
23 חסרונות המימוש מימוש הרשימה אמור להיות חלק מהייצוג הפנימי שלה ומוסתר מהלקוח במימוש המוצע לקוחות המחלקה MyList צריכים להכיר גם את המחלקה Cell Cell <Integer> x = null; Cell <Integer> y = new Cell<Integer>(5,x); Cell <Integer> z = new Cell<Integer>(3,y); MyList<Integer> l = new MyList<Integer>(z); l.printlist(); להחליף את המימוש לרשימה הדבר פוגע בהפשטת רשימה מקושרת למשל, אם בעתיד ירצה ספק MyCell דו-כיוונית 23
24 - קרוב שני MyList<T> public class MyList<T> { private Cell <T> head; private Cell <T> curr; public MyList (T... elements) { this.head = null; for (int i = elements.length-1; i >= 0; i--) { head = new Cell<T>(elements[i], head); curr = head; public boolean atend(){ return curr == null; */ public void advance() { curr = curr.next(); 24
25 - המשך MyList<T> */ public T cont() { return curr.cont(); השרות אינו מחזיר את התא הנוכחי )טיפוס )Cell אלא את התוכן של התא הנוכחי )T( */ public void addnext(t elem) { Cell<T> temp = new Cell<T>(elem, curr.next()); curr.setnext(temp); public void printlist() { System.out.print("List: "); for (Cell <T> y = head; y!= null; y = y.next()) System.out.print(y.cont() + " "); System.out.println(); ידפיס את תוצאת הפעלת השרות y.cont() על T של הטיפוס tostring 25
26 MyList<T> כעת לקוח הרשימה )MyList( :Cell<T> אינו מודע לקיום מחלקת העזר MyList<Integer> l = new MyList<Integer>(3,5); l.printlist(); l.advance(); l.addnext(4); l.printlist(); 26
27 ע) MyList<T> איך נממש את השרות (x addhere(int את האיבר x למקום הנוכחי ברשימה: שרות המוסיף בשונה מהשרות addnext() אנו צריכים לשנות את ההצבעה לתא.curr לשם כך ניתן לנקוט כמה גישות: גישה א': תחזוקה של prev נוסף על curr גישה ב': נרוץ מתחילת הרשימה עד המקום אחד לפני הנוכחי "י השוואת next() של כל תא ל )curr גישה ג': החלפת תכני התאים head 3 4 curr head curr 4 27
28 יחסים אינטימיים גישות א' ו- ב' פשוטות יותר רעיונית אך פחות אלגנטיות )תחזוקה, ביצועים( ננסה לממש את גישה ג */ public void addhere(t elem) { Cell<T> temp = new Cell<T>(elem, curr.next()); curr.setnext(temp); temp.cont = curr.cont(); curr.cont = elem; אולי במקרה זה דרישת הפרטיות של נראות של השדה cont היא מוגזמת? הקלת הנראות של שדה אינה מוצדקת ואולם, המחלקה Cell<T> היא מחלקת עזר של <T> MyList ולכן יש הצדקה למתן הרשאות גישה חריגות ל- <T> MyList לשדותיה הפרטיים של Cell<T> גם לו היתה ל Cell המתודה setcont() ניתן היה לאמר כי לאור השימוש התכוף שעושה הרשימה בשרותי התא, ניתן היה משיקולי יעילות לאפשר לה גישה ישירה לשדה זה 28
29 יחסים אינטימיים ב Java אם Cell ו MyList באותה חבילה אפשר להשתמש בנראות חבילה - אבל אז כל מחלקה אחרת בחבילה תוכל גם היא לגשת לפריטים האלה של Cell ניתן להגדיר אינטימיות בין מחלקות ב Java כמחלקה פנימית של המחלקה האחרת ע"י הגדרת אחת המחלקות מחלקות פנימיות הן מבנה תחבירי בשפת Java המבטא בין השאר הכרות אינטימית הערה על דרגות נראות: דרגת הנראות ב Java היא ברמת המחלקה. כלומר עצם מטיפוס כלשהו יכול לגשת גם לשדות הפרטיים של עצם אחר מאותו הטיפוס ניתן היה לחשוב גם על נראות ברמת העצם )לא קיים ב )Java 29
30 Inner Classes מחלקה פנימית היא מחלקה שהוגדרה בתחום Scope( בין המסולסליים( של מחלקה אחרת public class House { private String address; public class Room { private double width; private double height; 30 דוגמא: שימוש לב! Room אינה שדה של המחלקה House אם רוצים ליצור שדה כזה יש לעשות זאת במפורש
31 מחלקות פנימיות הגדרת מחלקה כפנימית מרמזת על היחס בין המחלקה הפנימית והמחלקה העוטפת: למחלקה הפנימית יש משמעות רק בהקשר של המחלקה החיצונית למחלקה הפנימית יש הכרות אינטימית עם המחלקה החיצונית המחלקה הפנימית היא מחלקת עזר של המחלקה החיצונית Cell ו- List דוגמאות: Iterator ו- Collection Brain ו- Body מבני נתונים המוגדרים ברקורסיה: 31
32 סוגי מחלקות פנימיות ב Java כל מופע של עצם מטיפוס המחלקה הפנימית משויך לעצם מטיפוס המחלקה העוטפת השלכות תחביר מיוחד לבנאי לעצם מטיפוס המחלקה הפנימית יש שדה הפנייה שמיוצר אוטומטית לעצם מהמחלקה העוטפת כתוצאה לכך יש למחלה הפנימית גישה לשדות ולשרותים )אפילו פרטיים!( של המחלקה העוטפת ולהיפך ניתן להגדיר מחלקה פנימית כ static ובכך לציין שהיא אינה קשורה למופע מסוים של המחלקה העוטפת הדבר אנלוגי למחלקה שכל שרותיה הוגדרו כ static והיא משמשת כספריה עבור מחלקה מסוימת בשפת ++C יחס זה מושג ע"י הגדרת יחס friend ניתן להגדיר מחלקה פנימית בתוך מתודה של המחלקה החיצונית ניתן להגדיר מחלקה פנימית אנונימית - הדבר שימושי במיוחד בספריות בהמשך הקורס.GUI פרטים 32
33 חזרה ל MyList ו Cell כדי להסתיר מהלקוח של הרשימה את הייצוג הפנימי, וכדי לאפשר גישה לשדות הפרטיים של נכתוב את Cell כמחלקה מקוננת, פרטית בתוך MyList האם מחלקה פנימית סטטית או לא? אפשרות אחת: Cell אינה סטטית אז כל עצם מסוג Cell משויך לעצם MyList כלומר לרשימה מסוימת, ומאפשר לעצם להכיר את הרשימה בה הוא מופיע. אבל מה נעשה אם הוא יעבור לרשימה אחרת? למעשה זה בלתי אפשרי! האבר )התוכן( יכול להיות מוכנס לרשימה אחרת, אבל לא העצם מטיפוס Cell אפשרות שנייה: Cell סטטית מה ההשלכות מבחינת הגנריות? 33
34 רשימה עם מחלקה מקוננת אם Cell מחלקה מקוננת לא סטטית בתוך MyList היא לא חייבת להיות מוגדרת כגנרית. טיפוס התוכן של ה Cell נקבע על פי הפרמטר האקטואלי של עצם ה MyList המתאים. כלומר הרשימה קובעת את סוג אבריה, עבור רשימה מסוימת שותפים לאותו וכל האברים שנוצרים קצת יותר קל לכתוב את הקוד הערה: נראות השדות והשרותים של מחלקה מקוננת פרטית אינה משמעותית )בכל מקרה ידועים למחלקה העוטפת ורק לה(. 34
35 public class MyList<T> { private class Cell { private T cont; private Cell next; { public T cont() { return cont; public Cell next() { return next; //... private Cell head; private Cell curr; public MyList(...) {... public boolean atend() { return curr == null; */ public void advance() { curr = curr.next(); //... 35
36 רשימה עם מחלקה מקוננת סטטית אם Cell סטטית היא חייבת להיות גנרית, כי אחרת, עבור: private T cont; נקבל הודעת שגיאה: Cannot make a static reference to the non-static type T כי אם Cell סטטית, היא לא מתייחסת לעצם מטיפוס,MyList שטיפוס האבר שלו נקבע ביצירתו, אלא למחלקה <T> MyList שבה לא נקבע טיפוס קונקרטי ל T אם כן, מה הפרמטר הגנרי שלה? T או אחר? שתי האפשרויות הן חוקיות, אבל צריך להבין שבכל מקרה אלה שני משתנים שונים, והשימוש עלול להיות מבלבל 36
37 public class MyList<T> { private static class Cell<S> { private S cont; private Cell<S> next; public Cell(S cont, Cell<S> next) { this.cont = cont; this.next = next; public S cont() { return cont; public Cell next() { return next; //... private Cell<T> head; private Cell<T> curr; public MyList(/*... */)... public boolean atend() { return curr == null; */ public void advance() { curr = curr.next(); //... 37
38 דיון: printlist() printlist() היא שרות גרוע בעיה: השרות פונה למסך זוהי החלטה שיש לשמור "לזמן קונפיגורציה". אולי הלקוח מעוניין להדפיס את המידע למקור אחר פתרון: שימוש ב tostring שרות זה יחזיר את אברי הרשימה כמחרוזת והלקוח יעשה במחרוזת כרצונו בעיה: השרות מכתיב את פורמט הדפסה )כותרות, רווחים, שורות חדשות( ומגביל את הלקוח לפורמט זה. הלקוח לא יכול לאסוף מידע זה בעצמו שכן הוא אפילו לא מכיר את המחלקה Cell 38
39 Iterator Design Pattern נפתור בעיה זו ע"י שימוש בתבנית התיכון עיצוב( Iterator )תבנית Iterator אינו חלק משפת התכנות אלא הוא מייצג קונספט, רעיון, קלישאה תכנותית שמאפשרת לייצג את רעיון סריקת מבנה נתונים כללי בשפות תכנות מוכוונות עצמים )#C,++C( Java, ממומשים איטרטורים שימושיים כטיפוס בספריה הסטנדרטית 39
40 איטרטור )סודר? אצן? סורק?( איטרטור הוא הפשטה של מעבר כלשהו כדי לבצע פעולה ישירה על מבנה נתונים, כיצד הוא מיוצג על מבנה נתונים יש לדעת גישה בעזרת איטרטור למבנה הנתונים מאפשרת למשתמש לסרוק מבנה נתונים ללא צורך להכיר את המבנה הפנימי שלו נדגים זאת על שני מבני נתונים המחזיקים תווים 40
41 הדפסת מערך )אינדקסים( char[] letters = {'a','b','c','d','e','f'; void printletters() { System.out.print("Letters: "); for (int i=0 ; i < letters.length ; i++) { System.out.print(letters[i] + " "); System.out.println(); 41
42 הדפסת רשימה מקושרת public class MyList<T> {... public void printlist() { System.out.print("Letters : "); for (Cell<T> y = head; y!= null ; y = y.getnext()) { System.out.print(y.getCont() + " "); System.out.println(); a b c d e f 42
43 הכרות אינטימית עם מבנה הנתונים 2 הדוגמאות הקודמות חושפות ידע מוקדם שיש לכותבת פונקצית ההדפסה על מבנה הנתונים: היא יודעת איפה הוא מתחיל ואיפה הוא נגמר היא מכירה את מבנה הטיפוס שבעזרתו ניתן לקבל את המידע השמור במצביע היא יודעת איך לעבור מאיבר לאיבר שאחריו בדוגמת הרשימה המקושרת כותבת המחלקה MyList היא זו שכתבה את מתודת ההדפסה )הספקית( זה אינו מצב רצוי - זהו רק מקרה פרטי של פעולה אחת מני רבות שלקוחות עשויים לרצות לבצע על מחלקה. על המחלקה לספק כלים ללקוחותיה לבצע פעולות כאלו בעצמם 43
44 האיטרטור איטרטור הוא בעצם מנשק )interface( המגדיר פעולות יסודיות שבעזרתן ניתן לבצע מגוון רחב של פעולות על אוספים ב Java טיפוס יקרא Iterator אם ניתן לבצע עליו 4 פעולות: בדיקה האם גלשנו )hasnext()( קידום )next()( גישה לנתון עצמו )next()( הסרה של נתון )remove()( 44
45 האיטרטור כן, זה נורא! next() היא גם פקודה וגם שאילתה ממש כשם שמימושים מסוימים של pop() על מחסנית גם מסירים את האיבר העליון וגם מחזירים אותו בשפות אחרות c++( או :)Eiffel יש הפרדה בין קידום משתנה העזר והגישה לנתון remove() אינה חלק משרותי איטרטור )וכך גם אנו סבורים( 45
46 אלגוריתם כללי להדפסת אוסף נתונים נדפיס את האיברים השמורים במבנה נתונים collection כלשהו: for (Iterator iter = collection.iterator(); iter.hasnext( ); ) { System.out.println(iter.next()); מבנה הנתונים עצמו אחראי לספק ללקוח איטרטור תיקני ממחלקה שמממשת את ממשק )Iterator המאותחל לתחילת מבנה הנתונים )עצם אם נרצה שהמחלקה MyList תספק ללקוחותיה את האפשרות לסרוק את כל האיברים ברשימה, עלינו לכתוב לה Iterator 46
47 MyListIterator תקני class MyListIterator<S> implements Iterator<S> { public MyListIterator(Cell<S> cell) { this.curr = cell; public boolean hasnext() { return curr!= null; public S next() { S result = curr.getcont(); curr = curr.getnext(); return result; public void remove() { // must be implemented private Cell<S> curr; 47
48 MyList<T> מספקת איטרטור ללקוחותיה public class MyList<T> implements Iterable<T> { //... public Iterator<T> iterator() { return new MyListIterator<T>(head); מחלקות המממשות את המתודה iterator() בעצם מממשות את המנשק Iterable<T> המכיל מתודה זו בלבד הצימוד בין MyList ו- MyListIterator חזק. על כן מקובל לממש את האיטרטור כמחלקה פנימית של האוסף שעליו הוא פועל כעת הלקוח יכול לבצע פעולות על כל אברי הרשימה בלי לדעת מהו המבנה הפנימי שלה 48
49 printsquares public void printsquares( Iterable<Integer> MyList<Integer> list ds ) { for (Iterator<Integer> iter = list.iterator(); ds iter.hasnext();) { int i = iter.next(); Autoboxing System.out.println(i*i); What is the output for: System.out.println(iter.next()*iter.next()); )שמרו לכן על הפרדה בין פקודות לשאיתות( הלקוח מדפיס את ריבועי אברי הרשימה בלי להשתמש בעובדה שזו אכן רשימה טיפוס הארגומנט MyList<Integer> יכול להיות מוחלף בשם המנשק < Iterable<Integer,ואז הלקוח לא ידע אפילו את שמו של טיפוס מבנה הנתונים 49
50 for/in (foreach) לולאת for שמבצעת את אותה פעולה על כל אברי אוסף נתונים כלשהו כה שכיחה, עד שב Java 5.0 הוסיפו אותה לשפה בתחביר מיוחד )for/in( הקוד מהשקף הקודם שקול לקוד הבא: public void printsquares(mylist<integer> list) { for (int i : list) System.out.println(i*i); יש לקרוא זאת כך: "לכל איבר i מטיפוס int שבאוסף הנתונים "...list אוסף הנתונים list חייב לממש את המנשק Iterable 50
51 for/in (foreach) ראינו כי מערכים מתנהגים כטיפוס :Iterable int[] arr = {6,5,4,3,2,1; for (int i : arr) { System.out.println(i*i); שימוש נכון במבנה for/in מייתר רבים משימושי האיטרטור 51
שיעור מספר 6: מקושרים
שיעור מספר 6: מקושרים וולף ליאור בית הספר למדעי המחשב על סדר היום נתחיל בדוגמא נאיבית של מבנה מקושר נכליל את המבנה ע"י הכללת טיפוסים נדון בייצוג הכרות אינטימית בשפת התכנות נדון בהפשטת מעבר סידרתי על נתונים
More informationASP.Net MVC + Entity Framework Code First.
ASP.Net MVC + Entity Framework Code First 1 הקדמה בפרק הזה יוצג שימוש בFirst EntityFramework Code עבור ה use case הבאים : ASP.Net MVC ASP.Net Web API ASP.Net MVC + Scaffolding הערה : Framework Entity הוצג
More informationקשירות.s,t V שני צמתים,G=(V,E) קלט: גרף מכוון מ- s t ל- t ; אחרת.0 אם יש מסלול מכוון פלט: הערה: הגרף נתון בייצוג של רשימות סמיכות.
סריקה לרוחב פרק 3 ב- Kleinberg/Tardos קשירות.s,t V שני צמתים,G=(V,E) קלט: גרף מכוון מ- s t ל- t ; אחרת.0 אם יש מסלול מכוון פלט: הערה: הגרף נתון בייצוג של רשימות סמיכות. קשירות.s,t V שני צמתים,G=(V,E) קלט:
More informationתרגול 11 תור עץ חיפוש בינארי
2018 מבוא למדעי המחשב תרגול 11 תור עץ חיפוש בינארי ראינו בהרצאות מבני נתונים נוספים עצים בינאריים עצי חיפוש בינאריים תור מחסנית נראה בתרגול מבני נתונים חדשים תור ממשק + מימוש + שאלה עץ חיפוש בינארי תזכורת
More informationמטוסים נופלים, כורים מתפוצצים זיכרון אוטומטי מקטסטרופות לומדים בניינים קורסים,
2 חלק עצמים ומחלקות בהנדסה קורות לעיתים קטסטרופות: מטוסים נופלים, כורים מתפוצצים בניינים קורסים, מקטסטרופות לומדים בעולם המחשבים, רוב הקטסטרופות התבטאו בכישלון לפתח תוכנה גדולה או בכישלון להשמיש תוכנה
More informationbyte code :(compiler) .class מהדר בתהליך עורך, סייר, קומפיילר,,JRE וכו'. למשל: אקליפס. נקודות חשובות: חסכון בהקצאת זיכרון.
1 שיעור 1: שלום עולם, תרגול 2: 1, מחרוזות ומערכים: מפרש :(interpreter) מריץ את הקוד שנכתב בשפת.Java חסרונות: מהדר מאט את מהירות הריצה. גילוי שגיאות רק בזמן ריצה. :(cmpiler) מעבד את קוד התוכנית לפורמט נוח
More informationטכנולוגיית WPF מספקת למפתחים מודל תכנות מאוחד לחוויית בניית יישומיי
WPF-Windows Presentation Foundation Windows WPF טכנולוגיית WPF מספקת למפתחים מודל תכנות מאוחד לחוויית בניית יישומיי Client חכמים המשלב ממשקי משתמש,תקשורת ומסמכים. מטרת התרגיל : ביצוע אנימציה לאליפסה ברגע
More informationתצוגת LCD חיבור התצוגה לבקר. (Liquid Crystal Display) המערכת.
1 (Liquid Crystal Display) תצוגת LCD בפרויקט ישנה אפשרות לראות את כל הנתונים על גבי תצוגת ה- LCD באופן ברור ונוח. תצוגה זו היא בעלת 2 שורות של מידע בעלות 16 תווים כל אחת. המשתמש יכול לראות על גבי ה- LCD
More informationPractical Session No. 13 Amortized Analysis, Union/Find
Practical Session No. 13 Amortized Analysis, Union/Find Amortized Analysis Refers to finding the average running time per operation, over a worst-case sequence of operations. Amortized analysis differs
More informationמספר ת"ז: יש לסמן את התשובה הטובה ביותר בתשובון. לא יינתן ניקוד על סימון תשובה בטופס הבחינה או במחברת הבחינה.
עמוד 1 עמוד 1 מתוך 11, בחינה בתוכנה 1 מספר סידורי: מספר ת"ז: סמסטר א' תשע"ז, מועד א', 11 בפברואר 117 ליאור וולף, תומר עזרא, לנה דנקין משך הבחינה שלוש שעות יש להניח שהקוד שמופיע במבחן מתאים לגירסה 7 של
More informationאנגלית (MODULE E) בהצלחה!
3 בגרות סוג הבחינה: מדינת ישראל חורף תשע"ט, 2019 מועד הבחינה: משרד החינוך 016481 מספר השאלון: א. משך הבחינה: שעה ורבע אנגלית שאלון ה' (MODULE E) ג רסה א' הוראות לנבחן מבנה השאלון ומפתח ההערכה: בשאלון זה
More informationמבוא למחשב בשפת פייתון
234221 מבוא למחשב בשפת פייתון 3 מבני בקרה ולולאות פרופ' ראובן בר-יהודה דין לייטרסדורף הפקולטה למדעי המחשב הטכניון מכון טכנולוגי לישראל נערך ע"י יעל ארז 1 פקודות והזחות 2 פקודה פשוטה >>> 3+2 5 >>> x = 5
More informationעץ תורשה מוגדר כך:שורש או שורש ושני בנים שכל אחד מהם עץ תורשה,כך שערך השורש גדול או שווה לסכום הנכדים(נכד-הוא רק בן של בן) נתון העץ הבא:
שאלה 1 עץ תורשה מוגדר כך:שורש או שורש ושני בנים שכל אחד מהם עץ תורשה,כך שערך השורש גדול או שווה לסכום הנכדים(נכד-הוא רק בן של בן) נתון העץ הבא: 99 80 50 15 40 34 30 22 10 13 20 13 9 8 א. ב. ג. האם העץ
More informationאנגלית שאלון ז' ג רסה א' הוראות לנבחן בהצלחה! )4( ההנחיות בשאלון זה מנוסחות בלשון זכר ומכוונות לנבחנות ולנבחנים כאחד. (MODULE G)
3 בגרות סוג הבחינה: מדינת ישראל חורף תשע"ט, 2019 מועד הבחינה: משרד החינוך 016582 מספר השאלון: א. משך הבחינה: שעה וארבעים וחמש דקות אנגלית שאלון ז' (MODULE G) ג רסה א' הוראות לנבחן מבנה השאלון ומפתח ההערכה:
More informationHebrew Ulpan HEB Young Judaea Year Course in Israel American Jewish University College Initiative
Hebrew Ulpan HEB 011-031 Young Judaea Year Course in Israel American Jewish University College Initiative Course Description Hebrew is not only the Sacred Language of the Jewish people, but it is also
More informationקורס מטלב לפיסיקאים שיעור מס' 10: משתנים מורכבים
שיעור מס' : משתנים מורכבים מערכי תאים מערך תאים הוא מערך שבו כל איבר בעצמו הוא מערך מסוג ומימדים כלשהם. לדוגמא מערך עמודה: מס' איבר 2 3 4 5 תוכן סקלר נומרי סקלר לוגי מטריצה נומרית 2 3 6 מערך-תאים (שורה
More informationמכונת מצבים סופית תרגול מס' 4. Moshe Malka & Ben lee Volk
מכונת מצבים סופית תרגול מס' 4 1 מכונת מצבים סופית Finite State Machine (FSM) מודל למערכת ספרתית מכונת מצבים סופית: קלט: סדרה אינסופית של אותיות...,I3,I1,I2 בא"ב input out פלט: סדרה אינסופית של אותיות O
More informationמבוא לתכנות - פיתוח משחקים ב Action Script 3.0
מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 כל מה שמעצב משחקים צריך לדעת בשביל לעבוד עם מתכנתים משחק בול פגיעה שעור 2 1P 0 AS3 2P 0 HIGH SCORE RANK SCORE NAME CREDIT 15 1ST 00045000 I.M 2ND 00039500
More informationמספר השאלון: Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א נ ג ל י ת (MODULE F) ספרות )מילון הראפס אנגלי-אנגלי-ערבי(
בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"א, 2011 מועד הבחינה: משרד החינוך 016117 מספר השאלון: Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א נ ג ל י ת א. משך הבחינה: שעה וחצי שאלון
More informationStructural Vs. Nominal Typing
שפות תכנות 234319 פרופ' יוסי גיל הפקולטה למדעי המחשב, הטכניון מכון טכנולוגי לישראל קיץ 2013 הרצאה מס' 6: טיפוסיות שמית ומבנית רשמה: איריס קלקה kalka.iris@gmail.com בשלב זה בקורס אנו עוסקים בתורת הטיפוסים.
More informationשאלון ו' הוראות לנבחן
סוג הבחינה: א. בגרות לבתי ספר על- יסודיים ב. בגרות לנבחני משנה ג. בגרות לנבחנים אקסטרניים מועד הבחינה: תשס"ו, מועד ב מספר השאלון: 406 016107, י ת ל ג נ א שאלון ו' )MODULE F( הוראות לנבחן א. משך הבחינה:
More informationA R E Y O U R E A L L Y A W A K E?
A R E Y O U R E A L L Y A W A K E? ב ר ו ך א ת ה י י א לה ינ ו מ ל ך ה עו ל ם, ה מ ע ב יר ש נ ה מ ע ינ י ות נ ומ ה מ ע פ ע פ י Blessed are You, Hashem our God, King of the Universe, who removes sleep from
More informationא נ ג ל י ת בהצלחה! ב. משרד החינוך בגרות לנבחנים אקסטרניים )מילון הראפס אנגלי-אנגלי-ערבי( השימוש במילון אחר טעון אישור הפיקוח על הוראת האנגלית.
בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. א. משך הבחינה: שעה ורבע מועד הבחינה: חורף תשס"ז, 2007 מספר השאלון: 406 016107, א נ ג ל י
More informationמבוא לתכנות - פיתוח משחקים ב Action Script 3.0
מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 כל מה שמעצב משחקים צריך לדעת בשביל לעבוד עם מתכנתים משחק טקסט שעור 3 1P 0 AS3 2P 0 HIGH SCORE RANK SCORE NAME CREDI 15 1S 00079000 G. 2ND 00079000 S.G 3RD
More informationPatents Basics. Yehuda Binder. (For copies contact:
Patents Basics Yehuda Binder (For copies contact: elissa@openu.ac.il) 1 Intellectual Property Value 2 Intellectual Property Rights Trademarks Copyrights Trade Secrets Patents 3 Trademarks Identify a source
More informationשאלון ד' הוראות לנבחן
סוג הבחינה: א. בגרות לבתי ספר על- יסודיים ב. בגרות לנבחני משנה ג. בגרות לנבחנים אקסטרניים מועד הבחינה: תשס"ה, מועד ב מספר השאלון: 404 016105, י ת ל ג נ א שאלון ד' )MODULE D( הוראות לנבחן א. משך הבחינה:
More informationתכנית סטארט עמותת יכולות, בשיתוף משרד החינוך א נ ג ל י ת שאלון א' Corresponds with Module A (Without Access to Information from Spoken Texts) גרסה א'
תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך מקום להדבקת מדבקת נבחן א נ ג ל י ת סוג בחינה: מועד הבחינה: מספר השאלון: מבחן מטה לבתי ספר תיכוניים חורף תשע"ד 29.01.2014 מותאם לשאלון א' של בחינת הבגרות שסמלו
More informationתוכנה 1 בשפת Java שיעור מספר 8: "ירושה נכונה" בית הספר למדעי המחשב אוניברסיטת תל אביב
שיעור מספר 8: "ירושה נכונה" )II )הורשה בית הספר למדעי המחשב היום בשיעור חזרה על איטרטורים מחלקות מופשטות טיפוסי זמן ריצה 2 איטרטורים - תזכורת 3 מדוע יש צורך בשני מנשקים? המנשק Iterable מתאר את האובייקט
More informationDNS פרק 4 ג' ברק גונן מבוסס על ספר הלימוד "רשתות מחשבים" עומר רוזנבוים 1
DNS פרק 4 ג' שכבת האפליקציה, פרוטוקול ברק גונן מבוסס על ספר הלימוד "רשתות מחשבים" עומר רוזנבוים מאת 1 בסיום הפרק נדע: מה תפקיד פרוטוקול?DNS לשם מה צריך?DNS מהי ההיררכיה של כתובות דפי האינטרנט? מהו,TLD
More informationבהצלחה! (MODULE C) Hoffman, Y. (2014). The Universal English-Hebrew, Hebrew-English Dictionary
בגרות סוג הבחינה: מדינת ישראל קיץ תשע"ז, 2017, מועד ב מועד הבחינה: משרד החינוך 403 016104, מספר השאלון: אנגלית שאלון ג' (MODULE C) ג רסה א' הוראות לנבחן א. משך הבחינה: שעה וחצי ב. מבנה השאלון ומפתח ההערכה:
More informationExpressions (ex 8) Wild World (ex 7) Cars (ex 9)
תר גול שי עור י ב ית 12 חזרה ע ל שא לו ת חשו בו ת מ שי ע ורי הבי ת ת וכנה 1 ס מ ס טר א' תשס"ז 1 סט ודנט י ם יקרים, אנא הקדישו מעט מזמנכם היקר ומלאו את סקר ההוראה. הסקר חשוב מאד כפידבק למרצים ולמתרגלים,
More informationנספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי
בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. קיץ תשע"ד, מועד ב, 2014 מועד הבחינה: מספר השאלון: 416 016117, Thinking Skills נספח: כישורי
More informationשאלון ו' הוראות לנבחן
סוג הבחינה: א. בגרות לבתי ספר על- יסודיים ב. בגרות לנבחני משנה ג. בגרות לנבחנים אקסטרניים מועד הבחינה: תשס"ה, מועד ב מספר השאלון: 406 016107, י ת ל ג נ א שאלון ו' )MODULE F( הוראות לנבחן א. משך הבחינה:
More informationהבסיס כתיבת התכנית הראשונה שימוש במשתנים. הטיפוס הבסיסי object. הטיפוס הבסיסי string משפטי בקרה. שימוש ב- Enumerations. שימוש ב- Namespaces
1 הבסיס כתיבת התכנית הראשונה שימוש במשתנים הטיפוס הבסיסי object הטיפוס הבסיסי string משפטי בקרה שימוש ב- Enumerations שימוש ב- Namespaces המתודה Main כתיבת הערות פקודות קדם מהדר 2 כתיבת התכנית הראשונה
More informationתרגול 8. Hash Tables
תרגול Hash Tables ds-ps חידה מהשיעור הקודם בכל השקים המטבעות שוקלים ורק בשק אחד המטבעות שוקלים.. מותר לנו לבצע שקילה אחת בלבד! איך נדע מה השק הקל יותר? שקים עם מטבעות ds-ps מה היה לנו דיברנו על מבני נתונים
More informationA JEW WALKS INTO A BAR: JEWISH IDENTITY IN NOT SUCH JEWISH PLACES
A JEW WALKS INTO A BAR: JEWISH IDENTITY IN NOT SUCH JEWISH PLACES Sinning in Disguise Like people of all faiths, Jews sometimes do things or go to places they are not supposed to. This session is not about
More informationנספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי
בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ב, מועד ב מועד הבחינה: משרד החינוך מספר השאלון: 016117 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א. משך הבחינה: שעה וחצי אנגלית שאלון
More informationזו מערכת ישרת זוית )קרטזית( אשר בה יש לנו 2 צירים מאונכים זה לזה. באותו מישור ניתן להגדיר נקודה על ידי זוית ורדיוס וקטור
קארדינטת קטבית y p p p במישר,y הגדרנ נקדה על ידי המרחקים מהצירים. ז מערכת ישרת זית )קרטזית( אשר בה יש לנ צירים מאנכים זה לזה. באת מישר ניתן להגדיר נקדה על ידי זית רדיס קטר. (, ) הרדיס קטר מסתבב )נגד כין
More informationãówh,é ËÓÉÔê ÌW W É Å t" Y w f É ËÓÉÑ É èw É f Ñ u ð NNM YóQ' ÌW W É Y ÉgO d óqk É w f ym Éd É u ð NNM ÌWNQMH uqo ð NNM ÌWNQMH
* .1.2.3 (X).1.2.3.4.5.6 בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל חורף תשע"ג, 2013 מועד הבחינה: משרד החינוך מספר השאלון: 016117 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית שאלון
More informationName Page 1 of 6. דף ט: This week s bechina starts at the two dots in the middle of
Name Page 1 of 6 ***Place an X if Closed גמרא (if no indication, we ll assume Open חזרה (גמרא of the :דף times.בל 'נ marked, using the contact info above by Sunday, December 25, 2016 and we ll send it
More informationמבוא לתכנות ב- JAVA תרגול 7
מבוא לתכנות ב- JAVA תרגול 7 שאלה )מועד א 2013( לפניך מספר הגדרות: תת מילה של המילה word הינה רצף של אותיות עוקבות של word פלינדרום באורך le היא מילה בעלת le אותיות שניתן לקרוא אותה משמאל לימין וגם מימין
More informationאנגלית ספרות בהצלחה! /המשך מעבר לדף/ נספח: כישורי חשיבה )לפרק ראשון ושני( או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי
בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. קיץ תשע"ד, מועד ב, 2014 מועד הבחינה: מספר השאלון: 414 016115, Thinking Skills נספח: כישורי
More informationפולימורפיזם. blog.csit.org.il מדעי המחשב
1 פולימורפיזם להסתכל על אותו אובייקט בצורות שונות. אובייקט של תת-מחלקה )המחלקה הנגזרת( הוא גם אובייקט של מחלקת העל )מחלקת הבסיס( )כלב הוא גם בעל-חיים וגם יונק(. פולימורפיזם מאפשר להשיג שתי מטרות: לטפל
More informationנספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות או מילון אנגלי-עברי-עברי-אנגלי
בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ג, 2013 מועד הבחינה: משרד החינוך מספר השאלון: 016115 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית שאלון ד' (MODULE D) א. משך הבחינה:
More informationFILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 134 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 37
FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO. 652082/2014 NYSCEF DOC. NO. 134 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 37 Translated from the Hebrew Sharf Translations Message sent From: Tomer Shohat
More informationRules Game (through lesson 30) by Nancy Decker Preparation: 1. Each rule board is immediately followed by at least three cards containing examples of
Rules Game (through lesson 30) by Nancy Decker Preparation: 1. Each rule board is immediately followed by at least three cards containing examples of the rule. (Choose three cards appropriate to the lesson
More informationתכנית סטארט עמותת יכולות, בשיתוף משרד החינוך א נ ג ל י ת שאלון ב' Corresponds with Module B גרסה ב' הוראות לנבחן
תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך מקום להדבקת מדבקת נבחן סוג בחינה: מועד הבחינה: מספר השאלון: מבחן מטה לבתי ספר תיכוניים חורף תשע"ד 29.01.2014 מותאם לשאלון ב' של בחינת הבגרות שסמלו 016103 א
More information(MODULE E) ב ה צ ל ח ה!
סוג הבחינה: א. בגרות לבתי ספר על- יסודיים ב. בגרות לנבחני משנה מועד הבחינה: קיץ תשס"ד, 2004 מספר השאלון: 016106 י ת ל ג נ א שאלון ה' (MODULE E) הוראות לנבחן א. משך הבחינה: שעה ורבע בשאלון זה שני פרקים.
More informationנספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי
בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ב, מועד ב מועד הבחינה: משרד החינוך מספר השאלון: 016115 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית שאלון ד' (MODULE D) א. משך הבחינה:
More informationRedirection The Input Buffer
מבוא לשפת C תירגול 3: טיפוסים והמרות 1 מה היה שבוע שעבר? משתנים קלט/פלט scanf) ו- printf ) Redirection The Input Buffer 2 תוכנייה טיפוסי משתנים קלט/פלט מעוצב המרה בין טיפוסים 3 חישוב ממוצע בין שני מספרים
More informationאנגלית שאלון ז' (MODULE G) ג רסה א' הוראות לנבחן )מילון אנגלי-ערבי / ערבי-אנגלי )
בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. חורף תשע"ג, 2013 מועד הבחינה: 407 016108, מספר השאלון: הצעת תשובות לשאלות בחינת הבגרות אנגלית
More informationנספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות או מילון אנגלי-עברי-עברי-אנגלי
בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ב, 2012 מועד הבחינה: משרד החינוך מספר השאלון: 016115 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית שאלון ד' (MODULE D) א. משך הבחינה:
More informationתאריך הבחינה: מבוא למדעי המחשב ד "ר פז כרמי פרופ' מייק קודיש ד "ר חן קיסר ד "ר צחי רוזן שם הקורס: מבוא למדעי המחשב מספר הקורס:
מבוא למדעי המחשב 202-1-1011 מבחן אנא קראו את ההוראות שלהלן בעיון: תאריך הבחינה: 622011 שמות המרצים: מר שי זקוב ד "ר פז כרמי פרופ' מייק קודיש ד "ר חן קיסר ד "ר צחי רוזן שם הקורס: מבוא למדעי המחשב מספר הקורס:
More informationפרק מחלקות ממשק המחלקה צריך גם לדעת להגדיר בתוכניתו מחלקות לפי הצורך. בפרק זה נלמד להגדיר מחלקה ולממשה על סמך ממשק נתון.
- 37-3 פרק מחלקות ובנייה הגדרה בפרק הקודם ראינו כיצד ניתן להשתמש במחלקות קיימות על מנת ליצור עצמים, צריך גם לדעת להגדיר בתוכניתו מחלקות לפי הצורך. אך מתכנת בפרק זה נלמד להגדיר מחלקה ולממשה על סמך ממשק
More informationמבחן מועד ב' אנא קיראו היטב את ההראות שלהלן:
מבחן מועד ב' תאריך הבחינה: 3.3.2015 שמות המרצים: דר' רועי זיון פרופ' משה זיפר פרופ' מיכאל קודיש דר' צחי רוזן גב' מיכל שמש שם הקורס: מבוא למדעי המחשב אנא קיראו היטב את ההראות שלהלן: מספר הקורס: 202-1-1011
More informationהמבנה הגאומטרי של מידה
התוכנה מאפשרת לרשום מידות מסוגים שונים בסרטוט, במגוון סגנונות ובהתאם לתקנים המקובלים. רצוי לבצע מתן מידות בשכבה המיועדת לכך. לכל מידה יש תכונות של בלוק. תהליך מתן המידות מתחיל תמיד מקביעת סגנון המידות.
More informationState Pattern מימוש מכונת מצבים (FSM) מבוא בעיה תמיכה ועדכונים עדכון מס' 48 מאי 2002
1 מרכז ההדרכה 2000 תמיכה ועדכונים עדכון מס' 48 מאי 2002 מימוש מכונת מצבים (FSM) באמצעות State Pattern מבוא מכונת מצבים סופית Machine) (Final State היא מודל מקובל בניתוח מערכות באופן כללי, ומערכות חומרה
More informationפרק מחלקות ממשק המחלקה צריך גם לדעת להגדיר בתוכניתו מחלקות לפי הצורך. בפרק זה נלמד להגדיר מחלקה ולממשה על סמך ממשק נתון.
- 37-3 פרק מחלקות ובנייה הגדרה בפרק הקודם ראינו כיצד ניתן להשתמש במחלקות קיימות על מנת ליצור עצמים, צריך גם לדעת להגדיר בתוכניתו מחלקות לפי הצורך. אך מתכנת בפרק זה נלמד להגדיר מחלקה ולממשה על סמך ממשק
More informationFILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 102 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 5
FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO. 652082/2014 NYSCEF DOC. NO. 102 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 5 McLaughlin, Terence K. From: Sent: To: Cc: Subject: Follow Up Flag: Flag Status:
More informationמספר השאלון: הצעת תשובות לשאלות בחינת הבגרות אנגלית (MODULE C) מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי قاموس إنجليزي - إنجليزي - عربي
בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. חורף תשע"ג, 2013 מועד הבחינה: 403 016104, מספר השאלון: הצעת תשובות לשאלות בחינת הבגרות אנגלית
More informationב. משרד החינוך בגרות לנבחנים אקסטרניים א נ ג ל י ת (MODULE B) הוראות מיוחדות: )2( בתום הבחינה החזר את השאלון למשגיח. בהצלחה!
בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. תשס"ז, מועד ב מועד הבחינה: מספר השאלון: 402 016103, א. משך הבחינה: שעה ורבע א נ ג ל י ת
More informationGenetic Tests for Partners of CF patients
Disclaimer: this presentation is not a genetic/medical counseling The Annual Israeli CF Society Meeting Oct 2013 Genetic Tests for Partners of CF patients Ori Inbar, PhD A father to a 8 year old boy with
More informationTHINKING ABOUT REST THE ORIGIN OF SHABBOS
Exploring SHABBOS SHABBOS REST AND RETURN Shabbos has a multitude of components which provide meaning and purpose to our lives. We will try to figure out the goal of Shabbos, how to connect to it, and
More information2007 Zindell Technologies, Ltd.
1 הורשה )Inheritance( הקדמה Derivation Syntax אופן הגדרתה של מחלקה שיורשת מאחרת - משמעות ההורשה - Effects Inheritance הרשאות הגישה Modifiers Access הגדרתן מחדש של מתודות שהגיעו בהורשה - Methods Overriding
More informationSEEDS OF GREATNESS MINING THROUGH THE STORY OF MOSHE S CHILDHOOD
Anatomy ofa l eader: them oshestory SEEDS OF GREATNESS MINING THROUGH THE STORY OF MOSHE S CHILDHOOD FOR LESSONS IN LEADERSHIP ש מ ות EXODUS CHAPTER 2 א ו י ל ך א י ש, מ ב ית ל ו י; ו י ק ח, א ת-ב ת-ל
More informationפרק רשימה א. ייצוג הרשימה
- 255-9 פרק רשימה לינארי אוסף בפרקים הקודמים הכרנו שני סוגי אוספים כלליים, מחסנית ותור. ראינו כי ההבדל ביניהם הוא בנוהל ההכנסה וההוצאה של האיברים: במחסנית האיברים הוכנסו והוצאו מצד אחד בלבד של המחסנית
More informationהקדמה פרופ' מוטי בן-ארי המחלקה להוראת המדעים מכון ויצמן למדע
ז( - 30 - פרופ' מוטי בן-ארי המחלקה להוראת המדעים מכון ויצמן למדע הקדמה במשך שנים רבות לימדתי שפות תכנות וכתבתי ספרי לימוד עליהן. המבנים לתמיכה בתכנות מונחה עצמים (תמ"ע) היו נושא מרכזי, משתמשים בהם ולמה
More informationReflection Session: Sustainability and Me
Goals: Participants will: identify needs in their home communities apply their sustainability learning to the conditions of their home communities design a sustainable project idea and evaluate the ideas
More informationתרגול מספר 9: בנאים, שיטות של אובייקטים והכמסה מבוא למדעי המחשב - סמסטר א' תשע"א,תרגול מס' 9. נושאי התרגול: this
תרגול מספר 9: בנאים, שיטות של אובייקטים והכמסה נושאי התרגול: this Shallow Copy, Deep Copy )Encapsulation( הכמסה )visibility modifiers( הגבלת גישה Setters ו- Getters )Exceptions( חריגות בתרגול הקודם הכרנו
More informationתמ מהו הקדמה פרופ' מוטי בן-ארי. Peter תמ"ע = עצמים + מחלקות + ירושה. תמ"ע "לייט" לבין תמ"ע אמיתי. Turbo Pascal
- 31 - פרופ' מוטי בן-ארי המחלקה להוראת המדעים מכון ויצמן למדע הקדמה במשך שנים רבות לימדתי שפות תכנות וכתבתי ספרי לימוד עליהן. המבנים לתמיכה בתכנות מונחה עצמים (תמ"ע) היו נושא מרכזי, משתמשים בהם ולמה הם
More informationבוחן בתכנות בשפת C בצלחה
בוחן בתכנות בשפת C ) כתוב תכנית הקולטת ממשתמש מספרים שלמים ומדפיסה כמה מספרים היו גדולים מ-, כמה מספרים היו קטנים מ-, וכמה מספרים היו שווים ל-. 2) כתוב תכנית הקלטת עשרה מספרים טבעיים ומחשבת את הממוצע שלהם.
More informationinterface Student {tag: Student, name: string; age: number;} const makestudent = ( name: string, age: number ) : Student =>
תאריך 23.07.2018 שם המרצים: מני אדלר, מיכאל אלחדד, ירון גונן מבחן בקורס: עקרונות שפות תכנות קורס' מס: 202-1-2051 מיועד לתלמידי: מדעי המחשב והנדסת תוכנה שנה: ב' סמסטר: ב' מועד ב' משך הבוחן: 3 שעות חומר
More informationל"תוכנה" שכותבים, כמו פונקציה זו, קוראים "קוד"
הגדרת פונקציות מבוא לתכנות מדעי וסטטיסטי R פונקציות, ו חלק 4 בנוסף לפונקציות שמגיעות מוכנות יחד עם המערכת exp) mean,,c וכו'), אפשר לכתוב פונקציות חדשות פונקציות נקראות לעתים "פרוצדורות" או "סאב-רוטינות"
More informationתורשכ ירפס לכ ץבוק " ב י קלח יללכ רעש
בס"ד קובץ כל ספרי כשרות י"ב חלק שער כללי הו"ל בחמלת ה' עלי בזכות אבותי ורבותי הקדושים זי"ע הק' שלום יהודה גראס, אבדק"ק האלמין יצ "ו חלק י "ב 4 ספרים ספר א': הפקעת שערים חלק א': קול קורא'ס שיצאו לאור נגד
More informationכפתור רדיו בחירה בודדת מתוך רשימת אפשרויות
תכנות בסביבת האינטרנט 1 כפתור רדיו בחירה בודדת מתוך רשימת אפשרויות כפתור רדיו משמש למקרים שבהם יש לבחור באפשרות אחת מתוך רשימת האפשרויות שבקבוצה. למשל: שאלון רב-ברירות )שאלון אמריקאי( שבו יש רק תשובה אחת
More informationב. משרד החינוך בגרות לנבחנים אקסטרניים א נ ג ל י ת (MODULE B) הוראות מיוחדות: )2( בתום הבחינה החזר את השאלון למשגיח. בהצלחה!
בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. חורף תשס"ח, 2008 מועד הבחינה: מספר השאלון: 402 016103, א. משך הבחינה: שעה ורבע א נ ג ל י
More informationשאלות חזרה לקראת מבחן מפמ"ר אינטרנט וסייבר
שאלות חזרה לקראת מבחן מפמ"ר אינטרנט וסייבר שאלה.1 ייצוג מידע בטבלה שלפניכם מספרים בבסיס. כל מספר מיוצג ע"י 5 סיביות. 10011 = 01100 = 00111 = 11000 = 11010 = 00101 = 10000 = 01111 = ד. יש להשלים את הערך
More informationחטיבת המינרלים החיוניים תתמקד בשוקי האגרו וחטיבת הפתרונות המיוחדים תשמש כחטיבה התעשייתית; כיל דשנים מיוחדים תשולב בחטיבת המינרלים החיוניים;
12 באפריל 2017 כיל מעדכנת את המבנה הארגוני של החברה חטיבת המינרלים החיוניים תתמקד בשוקי האגרו וחטיבת הפתרונות המיוחדים תשמש כחטיבה התעשייתית; כיל דשנים מיוחדים תשולב בחטיבת המינרלים החיוניים; הנהלת כיל
More informationניפוי שגיאות )Debug( מאת ישראל אברמוביץ
ניפוי שגיאות )Debug( מאת ישראל אברמוביץ בדף העבודה יש תירגול בסביבת העבודה לשפת #C לסביבות עבודה אחרות. )2015 )Visual Studio אך היא מתאימה גם לשפת Java וגם o 1. ריצה של כל התוכנית ועצירה בסוף יש לבחור
More informationתוכנה 1 בשפת Java "יוצא מן הכלל" שיעור מספר 9: שחר מעוז בית הספר למדעי המחשב אוניברסיטת תל אביב
שיעור מספר 9: "יוצא מן הכלל" שחר מעוז בית הספר למדעי המחשב היום בשיעור חריגים )Exceptions( מבטאים מצבים יוצאי דופן, מקרי קצה ומצבים בלתי צפויים בריצת התוכנית כגון: ארגומנטים שאינם חוקיים, בעיות ברשת התקשורת,
More informationסה"כ נקודות סה"כ 31 נקודות סה"כ 21 תוכן עניינים של פתרון המבחן. לולאת for )נתון אלגוריתם... מעקב, פלט
מבחן 0220 פרטים כלליים מועד הבחינה: בכל זמן מספר השאלון: 1 משך הבחינה: 3 שעות חומר עזר בשימוש: הכל )ספרים ומחברות( המלצות: קרא המלצות לפני הבחינה ובדיקות אחרונות לפני מסירה )עמודים 8-11( מבנה השאלון 5
More informationTheories of Justice
Syllabus Theories of Justice - 56981 Last update 06-08-2014 HU Credits: 2 Degree/Cycle: 1st degree (Bachelor) Responsible Department: political Science Academic year: 2 Semester: 2nd Semester Teaching
More informationAdvisor Copy. Welcome the NCSYers to your session. Feel free to try a quick icebreaker to learn their names.
Advisor Copy Before we begin, I would like to highlight a few points: Goal: 1. It is VERY IMPORTANT for you as an educator to put your effort in and prepare this session well. If you don t prepare, it
More informationתוכן העניינים: פרק סדרות סיכום תכונות הסדרה החשבונית:... 2 תשובות סופיות:...8 סיכום תכונות הסדרה ההנדסית:...10
תוכן העניינים: פרק סדרות סיכום תכונות הסדרה החשבונית: שאלות לפי נושאים: 3 שאלות העוסקות בנוסחת האיבר הכללי: 3 שאלות העוסקות בסכום סדרה חשבונית: 4 שאלות מסכמות: 5 תשובות סופיות: 8 סיכום תכונות הסדרה ההנדסית:
More informationסמסטר אביב 2015, מועד ב' סמסטר קיץ 2015, מועד א' מתרגלים: אביב - נורית מושקוביץ', הלאל עאסי, אלירן וייס; קיץ מאיה דיאמנט
יום חמישי, 17 לספטמבר 2015 מבחן סוף סמסטר - תכנות מונחה עצמים )236703( סמסטר סמסטר מרצים: אביב - ערן גלעד; קיץ - פרופ' יוסי גיל מתרגלים: אביב - נורית מושקוביץ', הלאל עאסי, אלירן וייס; קיץ מאיה דיאמנט הנחיות:
More informationתרגול 01: ממשקים והורשה
היום בתרגול ממשקים כללים בסיסיים o מימוש מספר ממשקים o דוגמת ממשק כחוזה o הורשה כללים בסיסיים o דריסה o instanceof אופרטור o תרגול 01: ממשקים והורשה interfaces ממשקים - כללי: הממשק אינו מחלקה, הוא מייצג
More informationעבודה מס' 3: תכנות מונחה עצמים ורשימות
עבודה מס' 3: תכנות מונחה עצמים ורשימות מתרגל אחראי: אבי יצחקוב תאריך פרסום העבודה: 05.01.16 מועד אחרון להגשה: 22.01.16 בעבודה זו תממשו סוכן נסיעות ממוחשב תוך שימוש בעקרונות של תכנות מונחה עצמים ורשימות.
More informationהצעת תשובות לשאלות בחינת הבגרות אנגלית
בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ג, 2013 מועד הבחינה: משרד החינוך מספר השאלון: 016117 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( הצעת תשובות לשאלות בחינת הבגרות אנגלית
More informationזה אומר שאחרי הכרות עם השפה מה שדורש השקעה אפשר להקדיש את מרבית הזמן לצד המוזיקלי יצירתי ולא התכנותיÆ איזה כיף
מדריך FAUST שפת תכנות ליישומי אודיו מחולל גל ריבועי פרויקט מס ± FAUST שפת תכנות המיועדת ליישומי עיבוד אות דיגיטלי במחשב בזמן אמת ומאפשרת להמיר אותם אח כ לפלאגינים בפורמט ÆVst ייחודה של השפה בכך שהיא מאפשרת
More informationName Page 1 of 5. דף ז. This week s bechina begins with the fifth wide line at the top of
Name Page 1 of 5 ***Place an X if Closed גמרא (if no indication, we ll assume Open חרה (גמרא of the :דף times Please email or fax your completed בחינה using the contact info above by Sunday, December 4,
More informationמבוא לתרבות סייבר שיעור מס
מבוא לתרבות סייבר שיעור מס. 1 26.10.2014 היום: היכרות מעבר על הסיליבוס להיות דיגיטלי ניקולס נגרופונטה עוזבים את האוטופיה הדיגיטלית מחשבים נגד חישוביות.1.2.3.4 )317-343 סיליבוס קריאות חובה Cyberculture:
More information3. class attr_accessor def end 9. end puts "
1. #!/usr/bin/env ruby 2. 3. class Ruby 4. attr_accessor :programming_language 5. 6. def to_s 7. @programming_language 8. 9. 10. 11. rb = Ruby.new 12. rb.programming_language = "ruby" 13. 14. puts rb.to_s
More informationדיאגרמה לתיאור Classes
1 דיאגרמה לתיאור Classes הקדמה לדיאגרמת Classes כללים במתן שמות ל- Classes שאנו מתארים הרשאות גישה של מרכיבי ה- Class השונים משתנים (Attributes) שמוגדרים ב- Class משתנים סטטיים Attributes) (Static מתודות
More informationתכנות בטוח חלק ב ' מאת עידו קנר
תכנות בטוח חלק ב' מאת עידו קנר הקדמה מאמר זה הינו חלק ההמשך של המאמר העוסק בנושא "התכנות הבטוח" אשר פורסם בגליון השביעי של.Digital Whisper בחלק הקודם הצגתי מקרים מאוד פשוטים וברורים אודות כמה מגישות בתכנות
More informationעיבוד שפות טבעיות מבוא
עיבוד שפות טבעיות מבוא ד"ר יואב גולדברג פרופ' עידו דגן )קרדיט לחלק מהשקפים: אורן גליקמן( המחלקה למדעי המחשב אוניברסיטת בר אילן 1 מבנה הקורס ודרישות 2 תרגילים 40% כ- 4, תכנות בזוגות שפת תכנות: ושימוש בתוכנות
More informationDesign Patterns מאיר סלע מהדורה ראשונה 2004 הדפסה 1 כל הזכויות שמורות
Design Patterns 4 Design Patterns מאיר סלע מהדורה ראשונה 2004 הדפסה 1 כל הזכויות שמורות מרכז ההדרכה עיטם 2000 אתר אינטרנט: www.mh2000.co.il דואר אלקטרוני: info@mh2000.co.il אין להעתיק, לשכפל או לצלם ספר
More informationמדעי המחשב מעבר על הרשימה למציאת המקום המתאים לאיבר. החזרת ה- value של ההפניה למינימום. הנחה: הרשימה לא ריקה.
מדעי המחשב ב' פרק - ראשון מבני נתונים שאלה א. ייצוג: 1 O(n) פעולות הוספה ו-האם-קיים ב- O(n) פעולות הצג-מינימום ו- הוצא-מקסימום ב- (1)O רשימה דו-כיוונית ממוינת )בסדר עולה או יורד( )בגודל n( הפנייה לאיבר
More informationגירסה C++ Tutorial Nir Adar עמוד 1
גירסה 2.00 4.10.2004 C++ Tutorial מסמך זה הורד מהאתר. אין להפיץ מסמך זה במדיה כלשהי, ללא אישור מפורש מאת המחבר. מחבר המסמך איננו אחראי לכל נזק, ישיר או עקיף, שיגרם עקב השימוש במידע המופיע במסמך, וכן לנכונות
More informationיסודות מבני נתונים. תרגול :9 ערימה - Heap
יסודות מבני נתונים תרגול :9 ערימה - Heap maximum שאלה: כמה זמן לוקח לחפש איבר בערימה? תשובה:,O(n) למרות שבערימה קיים סדר מסויים. Heaps 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 דוגמה: 7 11 13 21 12 17 20 34
More information